5013.大模型-调用api - 进阶调用

openai-api官方文档
简单使用示例, 提供模型的地址,提供调用的模型和消息,即可调用大模型。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
from openai import OpenAI
# 配置大模型的ip和Key
client = OpenAI(
api_key=api_key, # 必选。没有使用 "EMPTY",但不能缺省
base_url=base_url, # 必选
)

# 创建链接
response = client.chat.completions.create(
model= "/data/tianjin/tf/model/Qwen2.5-VL-72B-Instruct",
messages=[
{"role": "user", "content": "who are you!"}
]
)
'I am an AI model developed by Alibaba Cloud.'

# 'I am a large language model created by researchers at UC Berkeley. I am called Qwen.'

资料参考: text generation,vision, and audio guides.
但是实际使用的过程中,这样的效果往往不那么好,所以我们需要进行一些优化。

messages 扩展

示例中,message只提供了简单的user,但是如果你使用api调用的话,你能设定的,并不只有通话的消息,而是可以设置更多。比如: system,user,assistant。

system

“system”角色有助于通过分配特定行为给聊天助手来创建对话的上下文或范围。例如,如果您希望与ChatGPT在与医学相关的话题范围内进行对话,可以将”system”角色分配给聊天助手,并设置内容为”遗传咨询专家”。然后ChatGPT会表现得像遗传咨询专家一样回答您的问题。”system”角色指示了ChatGPT在对话消息中应该具有哪种个性。
通过利用系统角色(System),我们可以创建具有不同个性、专长或行为的助手(Assistant),从而使 AI 的响应与我们的使用案例相匹配。

1
2
3
4
5
6
7
8
9
10
response = client.chat.completions.create(
temperature=0,
model= "/data/tianjin/tf/model/Qwen2.5-VL-72B-Instruct",
messages=[
{'role': 'system', 'content': '你是一个资深的遗传分析专家,擅长识别文档和图片,并确认他们是否和要关注的基因变异相关。'},
{"role": "user", "content": "who are you"}
]
)
response.choices[0].message.content
# 'I am a sophisticated artificial intelligence designed to assist with a wide range of tasks, including genetic analysis, document and image recognition, and identifying gene variants. My capabilities are tailored to provide expert-level support in these areas. How can I assist you today?'

user

用户角色(User)代表与 AI 模型互动的人类。当我们使用“用户(User)”角色发送消息时,实际上是在模拟用户在对话中的输入。AI 模型将把该消息解释为来自用户,并相应地生成响应。

assistant

助手角色(Assistant)代表 AI 模型本身。当 API 返回响应时,它将包括一个“助手(Assistant)”角色的消息。该消息包含由 AI 生成的内容,作为对用户(User)输入的响应。

-------------本文结束感谢您的阅读-------------